home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text;
-
- import java.io.Serializable;
- import java.util.Stack;
- import java.util.Vector;
-
- public class DefaultStyledDocument$ElementBuffer implements Serializable {
- // $FF: synthetic field
- private final DefaultStyledDocument this$0;
- Element root;
- transient int pos;
- transient int offset;
- transient int length;
- transient int endOffset;
- transient Vector changes;
- transient Stack path;
- transient boolean insertOp;
- transient boolean recreateLeafs;
- transient DefaultStyledDocument.ElementBuffer.ElemChanges[] insertPath;
- transient boolean createdFracture;
- transient Element fracturedParent;
- transient Element fracturedChild;
- transient boolean offsetLastIndex;
- transient boolean offsetLastIndexOnReplace;
-
- public DefaultStyledDocument$ElementBuffer(DefaultStyledDocument var1, Element var2) {
- this.this$0 = var1;
- this.root = var2;
- this.changes = new Vector();
- this.path = new Stack();
- }
-
- void advance(int var1) {
- this.pos += var1;
- }
-
- void beginEdits(int var1, int var2) {
- this.offset = var1;
- this.length = var2;
- this.endOffset = var1 + var2;
- this.pos = var1;
- if (this.changes == null) {
- this.changes = new Vector();
- } else {
- this.changes.removeAllElements();
- }
-
- if (this.path == null) {
- this.path = new Stack();
- } else {
- this.path.removeAllElements();
- }
-
- this.fracturedParent = null;
- this.fracturedChild = null;
- this.offsetLastIndex = this.offsetLastIndexOnReplace = false;
- }
-
- boolean canJoin(Element var1, Element var2) {
- if (var1 != null && var2 != null) {
- if (var1.isLeaf() != var2.isLeaf()) {
- return false;
- } else {
- return var1.getName().equals("paragraph") && var2.getName().equals("paragraph") ? true : var1.getAttributes().isEqual(var2.getAttributes());
- }
- } else {
- return false;
- }
- }
-
- public void change(int var1, int var2, AbstractDocument.DefaultDocumentEvent var3) {
- this.beginEdits(var1, var2);
- this.changeUpdate();
- this.endEdits(var3);
- }
-
- protected void changeUpdate() {
- boolean var1 = this.split(this.offset, this.length);
- if (!var1) {
- while(this.path.size() != 0) {
- this.pop();
- }
-
- this.split(this.offset + this.length, 0);
- }
-
- while(this.path.size() != 0) {
- this.pop();
- }
-
- }
-
- public Element clone(Element var1, Element var2) {
- if (var2.isLeaf()) {
- return this.this$0.createLeafElement(var1, var2.getAttributes(), var2.getStartOffset(), var2.getEndOffset());
- } else {
- Element var3 = this.this$0.createBranchElement(var1, var2.getAttributes());
- int var4 = var2.getElementCount();
- Element[] var5 = new Element[var4];
-
- for(int var6 = 0; var6 < var4; ++var6) {
- var5[var6] = this.clone(var3, var2.getElement(var6));
- }
-
- ((AbstractDocument.BranchElement)var3).replace(0, 0, var5);
- return var3;
- }
- }
-
- void create(int var1, DefaultStyledDocument.ElementSpec[] var2, AbstractDocument.DefaultDocumentEvent var3) {
- this.insertOp = true;
- this.beginEdits(this.offset, var1);
- Element var4 = this.root;
-
- Element var6;
- for(int var5 = var4.getElementIndex(0); !var4.isLeaf(); var5 = var6.getElementIndex(0)) {
- var6 = var4.getElement(var5);
- this.push(var4, var5);
- var4 = var6;
- }
-
- DefaultStyledDocument.ElementBuffer.ElemChanges var10 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- Element var7 = var10.parent.getElement(var10.index);
- var10.added.addElement(this.this$0.createLeafElement(var10.parent, var7.getAttributes(), this.this$0.getLength(), var7.getEndOffset()));
- var10.removed.addElement(var7);
-
- while(this.path.size() > 1) {
- this.pop();
- }
-
- int var8 = var2.length;
-
- for(int var9 = 1; var9 < var8; ++var9) {
- this.insertElement(var2[var9]);
- }
-
- while(this.path.size() != 0) {
- this.pop();
- }
-
- this.endEdits(var3);
- this.insertOp = false;
- }
-
- void endEdits(AbstractDocument.DefaultDocumentEvent var1) {
- int var2 = this.changes.size();
-
- for(int var3 = 0; var3 < var2; ++var3) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var4 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.changes.elementAt(var3);
- Element[] var5 = new Element[var4.removed.size()];
- var4.removed.copyInto(var5);
- Element[] var6 = new Element[var4.added.size()];
- var4.added.copyInto(var6);
- int var7 = var4.index;
- ((AbstractDocument.BranchElement)var4.parent).replace(var7, var5.length, var6);
- AbstractDocument.ElementEdit var8 = new AbstractDocument.ElementEdit((AbstractDocument.BranchElement)var4.parent, var7, var5, var6);
- var1.addEdit(var8);
- }
-
- }
-
- void fracture(int var1) {
- int var2 = this.insertPath.length;
- int var3 = -1;
- boolean var4 = this.recreateLeafs;
- DefaultStyledDocument.ElementBuffer.ElemChanges var5 = this.insertPath[var2 - 1];
- boolean var6 = var5.index + 1 < var5.parent.getElementCount();
- int var7 = var4 ? var2 : -1;
- int var8 = var2 - 1;
- this.createdFracture = true;
-
- for(int var9 = var2 - 2; var9 >= 0; --var9) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var10 = this.insertPath[var9];
- if (var10.added.size() > 0 || var9 == var1) {
- var3 = var9;
- if (!var4 && var6) {
- var4 = true;
- if (var7 == -1) {
- var7 = var8 + 1;
- }
- }
- }
-
- if (!var6 && var10.index < var10.parent.getElementCount()) {
- var6 = true;
- var8 = var9;
- }
- }
-
- if (var4) {
- if (var3 == -1) {
- var3 = var2 - 1;
- }
-
- this.fractureFrom(this.insertPath, var3, var7);
- }
-
- }
-
- void fractureDeepestLeaf(DefaultStyledDocument.ElementSpec[] var1) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var2 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- Element var3 = var2.parent.getElement(var2.index);
- if (this.offset != 0) {
- Element var4 = this.this$0.createLeafElement(var2.parent, var3.getAttributes(), var3.getStartOffset(), this.offset);
- var2.added.addElement(var4);
- }
-
- var2.removed.addElement(var3);
- if (var3.getEndOffset() != this.endOffset) {
- this.recreateLeafs = true;
- } else {
- this.offsetLastIndex = true;
- }
-
- }
-
- void fractureFrom(DefaultStyledDocument.ElementBuffer.ElemChanges[] var1, int var2, int var3) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var4 = var1[var2];
- int var7 = var1.length;
- Element var5;
- if (var2 + 1 == var7) {
- var5 = var4.parent.getElement(var4.index);
- } else {
- var5 = var4.parent.getElement(var4.index - 1);
- }
-
- Element var6;
- if (var5.isLeaf()) {
- var6 = this.this$0.createLeafElement(var4.parent, var5.getAttributes(), Math.max(this.endOffset, var5.getStartOffset()), var5.getEndOffset());
- } else {
- var6 = this.this$0.createBranchElement(var4.parent, var5.getAttributes());
- }
-
- this.fracturedParent = var4.parent;
- this.fracturedChild = var6;
- Element var8 = var6;
-
- while(true) {
- ++var2;
- if (var2 >= var3) {
- return;
- }
-
- boolean var9 = var2 + 1 == var3;
- boolean var10 = var2 + 1 == var7;
- var4 = var1[var2];
- if (var9) {
- if (!this.offsetLastIndex && var10) {
- var5 = var4.parent.getElement(var4.index);
- } else {
- var5 = null;
- }
- } else {
- var5 = var4.parent.getElement(var4.index - 1);
- }
-
- if (var5 != null) {
- if (var5.isLeaf()) {
- var6 = this.this$0.createLeafElement(var8, var5.getAttributes(), Math.max(this.endOffset, var5.getStartOffset()), var5.getEndOffset());
- } else {
- var6 = this.this$0.createBranchElement(var8, var5.getAttributes());
- }
- } else {
- var6 = null;
- }
-
- int var11 = var4.parent.getElementCount() - var4.index;
- byte var14 = 1;
- Element[] var12;
- int var13;
- if (var6 == null) {
- if (var10) {
- --var11;
- var13 = var4.index + 1;
- } else {
- var13 = var4.index;
- }
-
- var14 = 0;
- var12 = new Element[var11];
- } else {
- if (!var9) {
- ++var11;
- var13 = var4.index;
- } else {
- var13 = var4.index + 1;
- }
-
- var12 = new Element[var11];
- var12[0] = var6;
- }
-
- for(int var15 = var14; var15 < var11; ++var15) {
- Element var16 = var4.parent.getElement(var13++);
- var12[var15] = this.recreateFracturedElement(var8, var16);
- var4.removed.addElement(var16);
- }
-
- ((AbstractDocument.BranchElement)var8).replace(0, 0, var12);
- var8 = var6;
- }
- }
-
- public Element getRootElement() {
- return this.root;
- }
-
- public void insert(int var1, int var2, DefaultStyledDocument.ElementSpec[] var3, AbstractDocument.DefaultDocumentEvent var4) {
- this.insertOp = true;
- this.beginEdits(var1, var2);
- this.insertUpdate(var3);
- this.endEdits(var4);
- this.insertOp = false;
- }
-
- void insertElement(DefaultStyledDocument.ElementSpec var1) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var2 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- switch (var1.getType()) {
- case 1:
- switch (var1.getDirection()) {
- case 5:
- Element var6 = var2.parent.getElement(var2.index);
- if (var6.isLeaf()) {
- if (var2.index + 1 >= var2.parent.getElementCount()) {
- throw new StateInvariantError("Join next to leaf");
- }
-
- var6 = var2.parent.getElement(var2.index + 1);
- }
-
- this.push(var6, 0, true);
- return;
- case 6:
- default:
- Element var9 = this.this$0.createBranchElement(var2.parent, var1.getAttributes());
- var2.added.addElement(var9);
- this.push(var9, 0);
- return;
- case 7:
- if (!this.createdFracture) {
- this.fracture(this.path.size() - 1);
- }
-
- if (!var2.isFracture) {
- this.push(this.fracturedChild, 0, true);
- } else {
- this.push(var2.parent.getElement(0), 0, true);
- }
-
- return;
- }
- case 2:
- this.pop();
- break;
- case 3:
- int var3 = var1.getLength();
- if (var1.getDirection() != 5) {
- Element var8 = this.this$0.createLeafElement(var2.parent, var1.getAttributes(), this.pos, this.pos + var3);
- var2.added.addElement(var8);
- } else if (var2.isFracture) {
- Element var7 = var2.parent.getElement(0);
- Element var11 = this.this$0.createLeafElement(var2.parent, var7.getAttributes(), this.pos, var7.getEndOffset());
- var2.added.addElement(var11);
- var2.removed.addElement(var7);
- } else {
- Element var4 = null;
- if (this.insertPath != null) {
- for(int var5 = this.insertPath.length - 1; var5 >= 0; --var5) {
- if (this.insertPath[var5] == var2) {
- if (var5 != this.insertPath.length - 1) {
- var4 = var2.parent.getElement(var2.index);
- }
- break;
- }
- }
- }
-
- if (var4 == null) {
- var4 = var2.parent.getElement(var2.index + 1);
- }
-
- Element var10 = this.this$0.createLeafElement(var2.parent, var4.getAttributes(), this.pos, var4.getEndOffset());
- var2.added.addElement(var10);
- var2.removed.addElement(var4);
- }
-
- this.pos += var3;
- }
-
- }
-
- void insertFirstContent(DefaultStyledDocument.ElementSpec[] var1) {
- DefaultStyledDocument.ElementSpec var2 = var1[0];
- DefaultStyledDocument.ElementBuffer.ElemChanges var3 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- Element var4 = var3.parent.getElement(var3.index);
- int var5 = this.offset + var2.getLength();
- boolean var6 = var1.length == 1;
- switch (var2.getDirection()) {
- case 4:
- if (var4.getEndOffset() != var5 && !var6) {
- Element var10 = this.this$0.createLeafElement(var3.parent, var4.getAttributes(), var4.getStartOffset(), var5);
- var3.added.addElement(var10);
- var3.removed.addElement(var4);
- if (var4.getEndOffset() != this.endOffset) {
- this.recreateLeafs = true;
- } else {
- this.offsetLastIndex = true;
- }
- } else {
- this.offsetLastIndex = true;
- this.offsetLastIndexOnReplace = true;
- }
- break;
- case 5:
- if (this.offset != 0) {
- Element var7 = this.this$0.createLeafElement(var3.parent, var4.getAttributes(), var4.getStartOffset(), this.offset);
- var3.added.addElement(var7);
- Element var8 = var3.parent.getElement(var3.index + 1);
- if (var6) {
- var7 = this.this$0.createLeafElement(var3.parent, var8.getAttributes(), this.offset, var8.getEndOffset());
- } else {
- var7 = this.this$0.createLeafElement(var3.parent, var8.getAttributes(), this.offset, var5);
- }
-
- var3.added.addElement(var7);
- var3.removed.addElement(var4);
- var3.removed.addElement(var8);
- }
- break;
- default:
- if (var4.getStartOffset() != this.offset) {
- Element var11 = this.this$0.createLeafElement(var3.parent, var4.getAttributes(), var4.getStartOffset(), this.offset);
- var3.added.addElement(var11);
- }
-
- var3.removed.addElement(var4);
- Element var12 = this.this$0.createLeafElement(var3.parent, var2.getAttributes(), this.offset, var5);
- var3.added.addElement(var12);
- if (var4.getEndOffset() != this.endOffset) {
- this.recreateLeafs = true;
- } else {
- this.offsetLastIndex = true;
- }
- }
-
- }
-
- protected void insertUpdate(DefaultStyledDocument.ElementSpec[] var1) {
- Element var2 = this.root;
-
- Element var4;
- for(int var3 = var2.getElementIndex(this.offset); !var2.isLeaf(); var3 = var4.getElementIndex(this.offset)) {
- var4 = var2.getElement(var3);
- this.push(var2, var4.isLeaf() ? var3 : var3 + 1);
- var2 = var4;
- }
-
- this.insertPath = new DefaultStyledDocument.ElementBuffer.ElemChanges[this.path.size()];
- this.path.copyInto(this.insertPath);
- this.createdFracture = false;
- this.recreateLeafs = false;
- int var9;
- if (var1[0].getType() == 3) {
- this.insertFirstContent(var1);
- this.pos += var1[0].getLength();
- var9 = 1;
- } else {
- this.fractureDeepestLeaf(var1);
- var9 = 0;
- }
-
- for(int var5 = var1.length; var9 < var5; ++var9) {
- this.insertElement(var1[var9]);
- }
-
- if (!this.createdFracture) {
- this.fracture(-1);
- }
-
- while(this.path.size() != 0) {
- this.pop();
- }
-
- if (this.offsetLastIndex && this.offsetLastIndexOnReplace) {
- ++this.insertPath[this.insertPath.length - 1].index;
- }
-
- for(int var6 = this.insertPath.length - 1; var6 >= 0; --var6) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var7 = this.insertPath[var6];
- if (var7.parent == this.fracturedParent) {
- var7.added.addElement(this.fracturedChild);
- }
-
- if ((var7.added.size() > 0 || var7.removed.size() > 0) && !this.changes.contains(var7)) {
- this.changes.addElement(var7);
- }
- }
-
- if (this.offset == 0 && this.fracturedParent != null && var1[0].getType() == 2) {
- int var10;
- for(var10 = 0; var10 < var1.length && var1[var10].getType() == 2; ++var10) {
- }
-
- DefaultStyledDocument.ElementBuffer.ElemChanges var8 = this.insertPath[this.insertPath.length - var10 - 1];
- var8.removed.insertElementAt(var8.parent.getElement(--var8.index), 0);
- }
-
- }
-
- Element join(Element var1, Element var2, Element var3, int var4, int var5) {
- if (var2.isLeaf() && var3.isLeaf()) {
- return this.this$0.createLeafElement(var1, var2.getAttributes(), var2.getStartOffset(), var3.getEndOffset());
- } else if (!var2.isLeaf() && !var3.isLeaf()) {
- Element var6 = this.this$0.createBranchElement(var1, var2.getAttributes());
- int var7 = var2.getElementIndex(var4);
- int var8 = var3.getElementIndex(var5);
- Element var9 = var2.getElement(var7);
- if (var9.getStartOffset() == var4) {
- var9 = null;
- }
-
- Element var10 = var3.getElement(var8);
- if (var10.getStartOffset() == var5) {
- var10 = null;
- }
-
- Vector var11 = new Vector();
-
- for(int var12 = 0; var12 < var7; ++var12) {
- var11.addElement(this.clone(var6, var2.getElement(var12)));
- }
-
- if (this.canJoin(var9, var10)) {
- Element var13 = this.join(var6, var9, var10, var4, var5);
- var11.addElement(var13);
- } else {
- if (var9 != null) {
- var11.addElement(this.clone(var6, var9));
- }
-
- if (var10 != null) {
- var11.addElement(this.clone(var6, var10));
- }
- }
-
- int var16 = var3.getElementCount();
-
- for(int var14 = var10 == null ? var8 : var8 + 1; var14 < var16; ++var14) {
- var11.addElement(this.clone(var6, var3.getElement(var14)));
- }
-
- Element[] var15 = new Element[var11.size()];
- var11.copyInto(var15);
- ((AbstractDocument.BranchElement)var6).replace(0, 0, var15);
- return var6;
- } else {
- throw new StateInvariantError("No support to join leaf element with non-leaf element");
- }
- }
-
- void pop() {
- DefaultStyledDocument.ElementBuffer.ElemChanges var1 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- this.path.pop();
- if (var1.added.size() <= 0 && var1.removed.size() <= 0) {
- if (!this.path.isEmpty()) {
- Element var2 = var1.parent;
- if (var2.getElementCount() == 0) {
- var1 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- var1.added.removeElement(var2);
- }
- }
- } else {
- this.changes.addElement(var1);
- }
-
- }
-
- void push(Element var1, int var2) {
- this.push(var1, var2, false);
- }
-
- void push(Element var1, int var2, boolean var3) {
- DefaultStyledDocument.ElementBuffer.ElemChanges var4 = new DefaultStyledDocument.ElementBuffer.ElemChanges(this, var1, var2, var3);
- this.path.push(var4);
- }
-
- Element recreateFracturedElement(Element var1, Element var2) {
- if (var2.isLeaf()) {
- return this.this$0.createLeafElement(var1, var2.getAttributes(), Math.max(var2.getStartOffset(), this.endOffset), var2.getEndOffset());
- } else {
- Element var3 = this.this$0.createBranchElement(var1, var2.getAttributes());
- int var4 = var2.getElementCount();
- Element[] var5 = new Element[var4];
-
- for(int var6 = 0; var6 < var4; ++var6) {
- var5[var6] = this.recreateFracturedElement(var3, var2.getElement(var6));
- }
-
- ((AbstractDocument.BranchElement)var3).replace(0, 0, var5);
- return var3;
- }
- }
-
- public void remove(int var1, int var2, AbstractDocument.DefaultDocumentEvent var3) {
- this.beginEdits(var1, var2);
- this.removeUpdate();
- this.endEdits(var3);
- }
-
- boolean removeElements(Element var1, int var2, int var3) {
- if (!var1.isLeaf()) {
- int var4 = var1.getElementIndex(var2);
- int var5 = var1.getElementIndex(var3);
- this.push(var1, var4);
- DefaultStyledDocument.ElementBuffer.ElemChanges var6 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- if (var4 == var5) {
- Element var13 = var1.getElement(var4);
- if (var2 <= var13.getStartOffset() && var3 >= var13.getEndOffset()) {
- var6.removed.addElement(var13);
- } else if (this.removeElements(var13, var2, var3)) {
- var6.removed.addElement(var13);
- }
- } else {
- Element var7 = var1.getElement(var4);
- Element var8 = var1.getElement(var5);
- boolean var9 = var3 < var1.getEndOffset();
- if (var9 && this.canJoin(var7, var8)) {
- for(int var14 = var4; var14 <= var5; ++var14) {
- var6.removed.addElement(var1.getElement(var14));
- }
-
- Element var15 = this.join(var1, var7, var8, var2, var3);
- var6.added.addElement(var15);
- } else {
- int var10 = var4 + 1;
- int var11 = var5 - 1;
- if (var7.getStartOffset() == var2 || var4 == 0 && var7.getStartOffset() > var2 && var7.getEndOffset() <= var3) {
- var7 = null;
- var10 = var4;
- }
-
- if (!var9) {
- var8 = null;
- ++var11;
- } else if (var8.getStartOffset() == var3) {
- var8 = null;
- }
-
- if (var10 <= var11) {
- var6.index = var10;
- }
-
- for(int var12 = var10; var12 <= var11; ++var12) {
- var6.removed.addElement(var1.getElement(var12));
- }
-
- if (var7 != null && this.removeElements(var7, var2, var3)) {
- var6.removed.insertElementAt(var7, 0);
- var6.index = var4;
- }
-
- if (var8 != null && this.removeElements(var8, var2, var3)) {
- var6.removed.addElement(var8);
- }
- }
- }
-
- this.pop();
- if (var1.getElementCount() == var6.removed.size() - var6.added.size()) {
- return true;
- }
- }
-
- return false;
- }
-
- protected void removeUpdate() {
- this.removeElements(this.root, this.offset, this.offset + this.length);
- }
-
- boolean split(int var1, int var2) {
- boolean var3 = false;
- Element var4 = this.root;
-
- for(int var5 = var4.getElementIndex(var1); !var4.isLeaf(); var5 = var4.getElementIndex(var1)) {
- this.push(var4, var5);
- var4 = var4.getElement(var5);
- }
-
- DefaultStyledDocument.ElementBuffer.ElemChanges var6 = (DefaultStyledDocument.ElementBuffer.ElemChanges)this.path.peek();
- Element var7 = var6.parent.getElement(var6.index);
- if (var7.getStartOffset() != var1) {
- int var8 = var6.index;
- int var9 = var8;
- if (var1 + var2 < var6.parent.getEndOffset() && var2 != 0) {
- var9 = var6.parent.getElementIndex(var1 + var2);
- if (var9 == var8) {
- var6.removed.addElement(var7);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), var7.getStartOffset(), var1);
- var6.added.addElement(var4);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), var1, var1 + var2);
- var6.added.addElement(var4);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), var1 + var2, var7.getEndOffset());
- var6.added.addElement(var4);
- return true;
- }
-
- var7 = var6.parent.getElement(var9);
- if (var1 + var2 == var7.getStartOffset()) {
- var9 = var8;
- }
-
- var3 = true;
- }
-
- this.pos = var1;
- var7 = var6.parent.getElement(var8);
- var6.removed.addElement(var7);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), var7.getStartOffset(), this.pos);
- var6.added.addElement(var4);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), this.pos, var7.getEndOffset());
- var6.added.addElement(var4);
-
- for(int var10 = var8 + 1; var10 < var9; ++var10) {
- var7 = var6.parent.getElement(var10);
- var6.removed.addElement(var7);
- var6.added.addElement(var7);
- }
-
- if (var9 != var8) {
- var7 = var6.parent.getElement(var9);
- this.pos = var1 + var2;
- var6.removed.addElement(var7);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), var7.getStartOffset(), this.pos);
- var6.added.addElement(var4);
- var4 = this.this$0.createLeafElement(var6.parent, var7.getAttributes(), this.pos, var7.getEndOffset());
- var6.added.addElement(var4);
- }
- }
-
- return var3;
- }
- }
-